@-moz-document url-prefix() {
    .ui-mobile fieldset {
        display: table-column;
        vertical-align: middle;
    }
}

/* Viewport */
.ui-mobile-viewport {
    margin: 0;
    overflow-x: visible;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Issue #2066 */
body.ui-mobile-viewport,
div.ui-mobile-viewport {
    overflow-x: hidden;
}

/* "page" containers - full-screen views, one should always be in view post-pageload */
.ui-mobile [data-role=page],
.ui-mobile [data-role=dialog],
.ui-page {
    top: 0;
    left: 0;
    width: 100%;
    min-height: 100%;
    position: absolute;
    display: none;
    border: 0;
}

/* On ios4, setting focus on the page element causes flashing during transitions when there is an outline, so we turn off outlines */
.ui-page {
    outline: none;
}

.ui-mobile .ui-page-active {
    display: block;
    overflow: visible;
    overflow-x: hidden;
}

@media screen and (orientation: portrait) {
    .ui-mobile .ui-page {
        min-height: 420px;
    }
}

@media screen and (orientation: landscape) {
    .ui-mobile .ui-page {
        min-height: 300px;
    }
}

/* Fouc */
.ui-mobile-rendering > * {
    visibility: hidden;
}

/* Non-js content hiding */
.ui-nojs {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

/* Loading screen */
.ui-loading .ui-loader {
    display: block;
}

.ui-loader {
    display: none;
    z-index: 9999999;
    position: fixed;
    top: 50%;
    left: 50%;
    border: 0;
}

.ui-loader-default {
    background: none;
    filter: Alpha(Opacity=18);
    opacity: .18;
    width: 2.875em;
    height: 2.875em;
    margin-left: -1.4375em;
    margin-top: -1.4375em;
}

.ui-loader-verbose {
    width: 12.5em;
    filter: Alpha(Opacity=88);
    opacity: .88;
    box-shadow: 0 1px 1px -1px #fff;
    height: auto;
    margin-left: -6.875em;
    margin-top: -2.6875em;
    padding: .625em;
}

.ui-loader-default h1 {
    font-size: 0;
    width: 0;
    height: 0;
    overflow: hidden;
}

.ui-loader-verbose h1 {
    font-size: 1em;
    margin: 0;
    text-align: center;
}

.ui-loader .ui-icon-loading {
    background-color: #000;
    display: block;
    margin: 0;
    width: 2.75em;
    height: 2.75em;
    padding: .0625em;
    -webkit-border-radius: 2.25em;
    border-radius: 2.25em;
}

.ui-loader-verbose .ui-icon-loading {
    margin: 0 auto .625em;
    filter: Alpha(Opacity=75);
    opacity: .75;
}

.ui-loader-textonly {
    padding: .9375em;
    margin-left: -7.1875em;
}

.ui-loader-textonly .ui-icon-loading {
    display: none;
}

.ui-loader-fakefix {
    position: absolute;
}

/* Transitions originally inspired by those from jQtouch, nice work, folks */
.ui-mobile-viewport-transitioning,
.ui-mobile-viewport-transitioning .ui-page {
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.ui-page-pre-in {
    opacity: 0;
}

.in {
    -webkit-animation-timing-function: ease-out;
    -webkit-animation-duration: 350ms;
    -moz-animation-timing-function: ease-out;
    -moz-animation-duration: 350ms;
    animation-timing-function: ease-out;
    animation-duration: 350ms;
}

.out {
    -webkit-animation-timing-function: ease-in;
    -webkit-animation-duration: 225ms;
    -moz-animation-timing-function: ease-in;
    -moz-animation-duration: 225ms;
    animation-timing-function: ease-in;
    animation-duration: 225ms;
}

@-webkit-keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-moz-keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-webkit-keyframes fadeout {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@-moz-keyframes fadeout {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes fadeout {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.fade.out {
    opacity: 0;
    -webkit-animation-duration: 125ms;
    -webkit-animation-name: fadeout;
    -moz-animation-duration: 125ms;
    -moz-animation-name: fadeout;
    animation-duration: 125ms;
    animation-name: fadeout;
}

.fade.in {
    opacity: 1;
    -webkit-animation-duration: 225ms;
    -webkit-animation-name: fadein;
    -moz-animation-duration: 225ms;
    -moz-animation-name: fadein;
    animation-duration: 225ms;
    animation-name: fadein;
}

.pop {
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}

.pop.in {
    -webkit-transform: scale(1);
    -webkit-animation-name: popin;
    -webkit-animation-duration: 350ms;
    -moz-transform: scale(1);
    -moz-animation-name: popin;
    -moz-animation-duration: 350ms;
    transform: scale(1);
    animation-name: popin;
    animation-duration: 350ms;
    opacity: 1;
}

.pop.out {
    -webkit-animation-name: fadeout;
    -webkit-animation-duration: 100ms;
    -moz-animation-name: fadeout;
    -moz-animation-duration: 100ms;
    animation-name: fadeout;
    animation-duration: 100ms;
    opacity: 0;
}

.pop.in.reverse {
    -webkit-animation-name: fadein;
    -moz-animation-name: fadein;
    animation-name: fadein;
}

.pop.out.reverse {
    -webkit-transform: scale(.8);
    -webkit-animation-name: popout;
    -moz-transform: scale(.8);
    -moz-animation-name: popout;
    transform: scale(.8);
    animation-name: popout;
}

@-webkit-keyframes popin {
    from {
        -webkit-transform: scale(.8);
        opacity: 0;
    }
    to {
        -webkit-transform: scale(1);
        opacity: 1;
    }
}

@-moz-keyframes popin {
    from {
        -moz-transform: scale(.8);
        opacity: 0;
    }
    to {
        -moz-transform: scale(1);
        opacity: 1;
    }
}

@keyframes popin {
    from {
        transform: scale(.8);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes popout {
    from {
        -webkit-transform: scale(1);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(.8);
        opacity: 0;
    }
}

@-moz-keyframes popout {
    from {
        -moz-transform: scale(1);
        opacity: 1;
    }
    to {
        -moz-transform: scale(.8);
        opacity: 0;
    }
}

@keyframes popout {
    from {
        transform: scale(1);
        opacity: 1;
    }
    to {
        transform: scale(.8);
        opacity: 0;
    }
}

/* keyframes for slidein from sides */
@-webkit-keyframes slideinfromright {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
    }
}

@-moz-keyframes slideinfromright {
    from {
        -moz-transform: translateX(100%);
    }
    to {
        -moz-transform: translateX(0);
    }
}

@keyframes slideinfromright {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(0);
    }
}

@-webkit-keyframes slideinfromleft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
    }
}

@-moz-keyframes slideinfromleft {
    from {
        -moz-transform: translateX(-100%);
    }
    to {
        -moz-transform: translateX(0);
    }
}

@keyframes slideinfromleft {
    from {
        transform: translateX(-100%);
    }
    to {
        transform: translateX(0);
    }
}

/* keyframes for slideout to sides */
@-webkit-keyframes slideouttoleft {
    from {
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        -webkit-transform: translate3d(-100%, 0, 0);
    }
}

@-moz-keyframes slideouttoleft {
    from {
        -moz-transform: translateX(0);
    }
    to {
        -moz-transform: translateX(-100%);
    }
}

@keyframes slideouttoleft {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

@-webkit-keyframes slideouttoright {
    from {
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0);
    }
}

@-moz-keyframes slideouttoright {
    from {
        -moz-transform: translateX(0);
    }
    to {
        -moz-transform: translateX(100%);
    }
}

@keyframes slideouttoright {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(100%);
    }
}

.slide.out, .slide.in {
    -webkit-animation-timing-function: ease-out;
    -webkit-animation-duration: 350ms;
    -moz-animation-timing-function: ease-out;
    -moz-animation-duration: 350ms;
    animation-timing-function: ease-out;
    animation-duration: 350ms;
}

.slide.out {
    -webkit-transform: translate3d(-100%, 0, 0);
    -webkit-animation-name: slideouttoleft;
    -moz-transform: translateX(-100%);
    -moz-animation-name: slideouttoleft;
    transform: translateX(-100%);
    animation-name: slideouttoleft;
}

.slide.in {
    -webkit-transform: translate3d(0, 0, 0);
    -webkit-animation-name: slideinfromright;
    -moz-transform: translateX(0);
    -moz-animation-name: slideinfromright;
    transform: translateX(0);
    animation-name: slideinfromright;
}

.slide.out.reverse {
    -webkit-transform: translate3d(100%, 0, 0);
    -webkit-animation-name: slideouttoright;
    -moz-transform: translateX(100%);
    -moz-animation-name: slideouttoright;
    transform: translateX(100%);
    animation-name: slideouttoright;
}

.slide.in.reverse {
    -webkit-transform: translate3d(0, 0, 0);
    -webkit-animation-name: slideinfromleft;
    -moz-transform: translateX(0);
    -moz-animation-name: slideinfromleft;
    transform: translateX(0);
    animation-name: slideinfromleft;
}

.slidefade.out {
    -webkit-transform: translateX(-100%);
    -webkit-animation-name: slideouttoleft;
    -webkit-animation-duration: 225ms;
    -moz-transform: translateX(-100%);
    -moz-animation-name: slideouttoleft;
    -moz-animation-duration: 225ms;
    transform: translateX(-100%);
    animation-name: slideouttoleft;
    animation-duration: 225ms;
}

.slidefade.in {
    -webkit-transform: translateX(0);
    -webkit-animation-name: fadein;
    -webkit-animation-duration: 200ms;
    -moz-transform: translateX(0);
    -moz-animation-name: fadein;
    -moz-animation-duration: 200ms;
    transform: translateX(0);
    animation-name: fadein;
    animation-duration: 200ms;
}

.slidefade.out.reverse {
    -webkit-transform: translateX(100%);
    -webkit-animation-name: slideouttoright;
    -webkit-animation-duration: 200ms;
    -moz-transform: translateX(100%);
    -moz-animation-name: slideouttoright;
    -moz-animation-duration: 200ms;
    transform: translateX(100%);
    animation-name: slideouttoright;
    animation-duration: 200ms;
}

.slidefade.in.reverse {
    -webkit-transform: translateX(0);
    -webkit-animation-name: fadein;
    -webkit-animation-duration: 200ms;
    -moz-transform: translateX(0);
    -moz-animation-name: fadein;
    -moz-animation-duration: 200ms;
    transform: translateX(0);
    animation-name: fadein;
    animation-duration: 200ms;
}

/* slide down */
.slidedown.out {
    -webkit-animation-name: fadeout;
    -webkit-animation-duration: 100ms;
    -moz-animation-name: fadeout;
    -moz-animation-duration: 100ms;
    animation-name: fadeout;
    animation-duration: 100ms;
}

.slidedown.in {
    -webkit-transform: translateY(0);
    -webkit-animation-name: slideinfromtop;
    -webkit-animation-duration: 250ms;
    -moz-transform: translateY(0);
    -moz-animation-name: slideinfromtop;
    -moz-animation-duration: 250ms;
    transform: translateY(0);
    animation-name: slideinfromtop;
    animation-duration: 250ms;
}

.slidedown.in.reverse {
    -webkit-animation-name: fadein;
    -webkit-animation-duration: 150ms;
    -moz-animation-name: fadein;
    -moz-animation-duration: 150ms;
    animation-name: fadein;
    animation-duration: 150ms;
}

.slidedown.out.reverse {
    -webkit-transform: translateY(-100%);
    -webkit-animation-name: slideouttotop;
    -webkit-animation-duration: 200ms;
    -moz-transform: translateY(-100%);
    -moz-animation-name: slideouttotop;
    -moz-animation-duration: 200ms;
    transform: translateY(-100%);
    animation-name: slideouttotop;
    animation-duration: 200ms;
}

@-webkit-keyframes slideinfromtop {
    from {
        -webkit-transform: translateY(-100%);
    }
    to {
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes slideinfromtop {
    from {
        -moz-transform: translateY(-100%);
    }
    to {
        -moz-transform: translateY(0);
    }
}

@keyframes slideinfromtop {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

@-webkit-keyframes slideouttotop {
    from {
        -webkit-transform: translateY(0);
    }
    to {
        -webkit-transform: translateY(-100%);
    }
}

@-moz-keyframes slideouttotop {
    from {
        -moz-transform: translateY(0);
    }
    to {
        -moz-transform: translateY(-100%);
    }
}

@keyframes slideouttotop {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(-100%);
    }
}

/* slide up */
.slideup.out {
    -webkit-animation-name: fadeout;
    -webkit-animation-duration: 100ms;
    -moz-animation-name: fadeout;
    -moz-animation-duration: 100ms;
    animation-name: fadeout;
    animation-duration: 100ms;
}

.slideup.in {
    -webkit-transform: translateY(0);
    -webkit-animation-name: slideinfrombottom;
    -webkit-animation-duration: 250ms;
    -moz-transform: translateY(0);
    -moz-animation-name: slideinfrombottom;
    -moz-animation-duration: 250ms;
    transform: translateY(0);
    animation-name: slideinfrombottom;
    animation-duration: 250ms;
}

.slideup.in.reverse {
    -webkit-animation-name: fadein;
    -webkit-animation-duration: 150ms;
    -moz-animation-name: fadein;
    -moz-animation-duration: 150ms;
    animation-name: fadein;
    animation-duration: 150ms;
}

.slideup.out.reverse {
    -webkit-transform: translateY(100%);
    -webkit-animation-name: slideouttobottom;
    -webkit-animation-duration: 200ms;
    -moz-transform: translateY(100%);
    -moz-animation-name: slideouttobottom;
    -moz-animation-duration: 200ms;
    transform: translateY(100%);
    animation-name: slideouttobottom;
    animation-duration: 200ms;
}

@-webkit-keyframes slideinfrombottom {
    from {
        -webkit-transform: translateY(100%);
    }
    to {
        -webkit-transform: translateY(0);
    }
}

@-moz-keyframes slideinfrombottom {
    from {
        -moz-transform: translateY(100%);
    }
    to {
        -moz-transform: translateY(0);
    }
}

@keyframes slideinfrombottom {
    from {
        transform: translateY(100%);
    }
    to {
        transform: translateY(0);
    }
}

@-webkit-keyframes slideouttobottom {
    from {
        -webkit-transform: translateY(0);
    }
    to {
        -webkit-transform: translateY(100%);
    }
}

@-moz-keyframes slideouttobottom {
    from {
        -moz-transform: translateY(0);
    }
    to {
        -moz-transform: translateY(100%);
    }
}

@keyframes slideouttobottom {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(100%);
    }
}

/* The properties in this rule are only necessary for the 'flip' transition.
 * We need specify the perspective to create a projection matrix. This will add
 * some depth as the element flips. The depth number represents the distance of
 * the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate
 * value.
 */
.viewport-flip {
    -webkit-perspective: 1000;
    -moz-perspective: 1000;
    perspective: 1000;
    position: absolute;
}

.flip {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
    -moz-backface-visibility: hidden;
    -moz-transform: translateX(0);
    backface-visibility: hidden;
    transform: translateX(0);
}

.flip.out {
    -webkit-transform: rotateY(-90deg) scale(.9);
    -webkit-animation-name: flipouttoleft;
    -webkit-animation-duration: 175ms;
    -moz-transform: rotateY(-90deg) scale(.9);
    -moz-animation-name: flipouttoleft;
    -moz-animation-duration: 175ms;
    transform: rotateY(-90deg) scale(.9);
    animation-name: flipouttoleft;
    animation-duration: 175ms;
}

.flip.in {
    -webkit-animation-name: flipintoright;
    -webkit-animation-duration: 225ms;
    -moz-animation-name: flipintoright;
    -moz-animation-duration: 225ms;
    animation-name: flipintoright;
    animation-duration: 225ms;
}

.flip.out.reverse {
    -webkit-transform: rotateY(90deg) scale(.9);
    -webkit-animation-name: flipouttoright;
    -moz-transform: rotateY(90deg) scale(.9);
    -moz-animation-name: flipouttoright;
    transform: rotateY(90deg) scale(.9);
    animation-name: flipouttoright;
}

.flip.in.reverse {
    -webkit-animation-name: flipintoleft;
    -moz-animation-name: flipintoleft;
    animation-name: flipintoleft;
}

@-webkit-keyframes flipouttoleft {
    from {
        -webkit-transform: rotateY(0);
    }
    to {
        -webkit-transform: rotateY(-90deg) scale(.9);
    }
}

@-moz-keyframes flipouttoleft {
    from {
        -moz-transform: rotateY(0);
    }
    to {
        -moz-transform: rotateY(-90deg) scale(.9);
    }
}

@keyframes flipouttoleft {
    from {
        transform: rotateY(0);
    }
    to {
        transform: rotateY(-90deg) scale(.9);
    }
}

@-webkit-keyframes flipouttoright {
    from {
        -webkit-transform: rotateY(0);
    }
    to {
        -webkit-transform: rotateY(90deg) scale(.9);
    }
}

@-moz-keyframes flipouttoright {
    from {
        -moz-transform: rotateY(0);
    }
    to {
        -moz-transform: rotateY(90deg) scale(.9);
    }
}

@keyframes flipouttoright {
    from {
        transform: rotateY(0);
    }
    to {
        transform: rotateY(90deg) scale(.9);
    }
}

@-webkit-keyframes flipintoleft {
    from {
        -webkit-transform: rotateY(-90deg) scale(.9);
    }
    to {
        -webkit-transform: rotateY(0);
    }
}

@-moz-keyframes flipintoleft {
    from {
        -moz-transform: rotateY(-90deg) scale(.9);
    }
    to {
        -moz-transform: rotateY(0);
    }
}

@keyframes flipintoleft {
    from {
        transform: rotateY(-90deg) scale(.9);
    }
    to {
        transform: rotateY(0);
    }
}

@-webkit-keyframes flipintoright {
    from {
        -webkit-transform: rotateY(90deg) scale(.9);
    }
    to {
        -webkit-transform: rotateY(0);
    }
}

@-moz-keyframes flipintoright {
    from {
        -moz-transform: rotateY(90deg) scale(.9);
    }
    to {
        -moz-transform: rotateY(0);
    }
}

@keyframes flipintoright {
    from {
        transform: rotateY(90deg) scale(.9);
    }
    to {
        transform: rotateY(0);
    }
}

/* The properties in this rule are only necessary for the 'flip' transition.
 * We need specify the perspective to create a projection matrix. This will add
 * some depth as the element flips. The depth number represents the distance of
 * the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate
 * value.
 */
.viewport-turn {
    -webkit-perspective: 200px;
    -moz-perspective: 200px;
    -ms-perspective: 200px;
    perspective: 200px;
    position: absolute;
}

.turn {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
    -webkit-transform-origin: 0;

    -moz-backface-visibility: hidden;
    -moz-transform: translateX(0);
    -moz-transform-origin: 0;

    backface-visibility: hidden;
    transform: translateX(0);
    transform-origin: 0;
}

.turn.out {
    -webkit-transform: rotateY(-90deg) scale(.9);
    -webkit-animation-name: flipouttoleft;
    -webkit-animation-duration: 125ms;
    -moz-transform: rotateY(-90deg) scale(.9);
    -moz-animation-name: flipouttoleft;
    -moz-animation-duration: 125ms;
    transform: rotateY(-90deg) scale(.9);
    animation-name: flipouttoleft;
    animation-duration: 125ms;
}

.turn.in {
    -webkit-animation-name: flipintoright;
    -webkit-animation-duration: 250ms;
    -moz-animation-name: flipintoright;
    -moz-animation-duration: 250ms;
    animation-name: flipintoright;
    animation-duration: 250ms;

}

.turn.out.reverse {
    -webkit-transform: rotateY(90deg) scale(.9);
    -webkit-animation-name: flipouttoright;
    -moz-transform: rotateY(90deg) scale(.9);
    -moz-animation-name: flipouttoright;
    transform: rotateY(90deg) scale(.9);
    animation-name: flipouttoright;
}

.turn.in.reverse {
    -webkit-animation-name: flipintoleft;
    -moz-animation-name: flipintoleft;
    animation-name: flipintoleft;
}

@-webkit-keyframes flipouttoleft {
    from {
        -webkit-transform: rotateY(0);
    }
    to {
        -webkit-transform: rotateY(-90deg) scale(.9);
    }
}

@-moz-keyframes flipouttoleft {
    from {
        -moz-transform: rotateY(0);
    }
    to {
        -moz-transform: rotateY(-90deg) scale(.9);
    }
}

@keyframes flipouttoleft {
    from {
        transform: rotateY(0);
    }
    to {
        transform: rotateY(-90deg) scale(.9);
    }
}

@-webkit-keyframes flipouttoright {
    from {
        -webkit-transform: rotateY(0);
    }
    to {
        -webkit-transform: rotateY(90deg) scale(.9);
    }
}

@-moz-keyframes flipouttoright {
    from {
        -moz-transform: rotateY(0);
    }
    to {
        -moz-transform: rotateY(90deg) scale(.9);
    }
}

@keyframes flipouttoright {
    from {
        transform: rotateY(0);
    }
    to {
        transform: rotateY(90deg) scale(.9);
    }
}

@-webkit-keyframes flipintoleft {
    from {
        -webkit-transform: rotateY(-90deg) scale(.9);
    }
    to {
        -webkit-transform: rotateY(0);
    }
}

@-moz-keyframes flipintoleft {
    from {
        -moz-transform: rotateY(-90deg) scale(.9);
    }
    to {
        -moz-transform: rotateY(0);
    }
}

@keyframes flipintoleft {
    from {
        transform: rotateY(-90deg) scale(.9);
    }
    to {
        transform: rotateY(0);
    }
}

@-webkit-keyframes flipintoright {
    from {
        -webkit-transform: rotateY(90deg) scale(.9);
    }
    to {
        -webkit-transform: rotateY(0);
    }
}

@-moz-keyframes flipintoright {
    from {
        -moz-transform: rotateY(90deg) scale(.9);
    }
    to {
        -moz-transform: rotateY(0);
    }
}

@keyframes flipintoright {
    from {
        transform: rotateY(90deg) scale(.9);
    }
    to {
        transform: rotateY(0);
    }
}

/* flow transition */
.flow {
    -webkit-transform-origin: 50% 30%;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .4);
    -moz-transform-origin: 50% 30%;
    -moz-box-shadow: 0 0 20px rgba(0, 0, 0, .4);
    transform-origin: 50% 30%;
    box-shadow: 0 0 20px rgba(0, 0, 0, .4);
}

.ui-dialog.flow {
    -webkit-transform-origin: none;
    -webkit-box-shadow: none;
    -moz-transform-origin: none;
    -moz-box-shadow: none;
    transform-origin: none;
    box-shadow: none;
}

.flow.out {
    -webkit-transform: translateX(-100%) scale(.7);
    -webkit-animation-name: flowouttoleft;
    -webkit-animation-timing-function: ease;
    -webkit-animation-duration: 350ms;
    -moz-transform: translateX(-100%) scale(.7);
    -moz-animation-name: flowouttoleft;
    -moz-animation-timing-function: ease;
    -moz-animation-duration: 350ms;
    transform: translateX(-100%) scale(.7);
    animation-name: flowouttoleft;
    animation-timing-function: ease;
    animation-duration: 350ms;
}

.flow.in {
    -webkit-transform: translateX(0) scale(1);
    -webkit-animation-name: flowinfromright;
    -webkit-animation-timing-function: ease;
    -webkit-animation-duration: 350ms;
    -moz-transform: translateX(0) scale(1);
    -moz-animation-name: flowinfromright;
    -moz-animation-timing-function: ease;
    -moz-animation-duration: 350ms;
    transform: translateX(0) scale(1);
    animation-name: flowinfromright;
    animation-timing-function: ease;
    animation-duration: 350ms;
}

.flow.out.reverse {
    -webkit-transform: translateX(100%);
    -webkit-animation-name: flowouttoright;
    -moz-transform: translateX(100%);
    -moz-animation-name: flowouttoright;
    transform: translateX(100%);
    animation-name: flowouttoright;
}

.flow.in.reverse {
    -webkit-animation-name: flowinfromleft;
    -moz-animation-name: flowinfromleft;
    animation-name: flowinfromleft;
}

@-webkit-keyframes flowouttoleft {
    0% {
        -webkit-transform: translateX(0) scale(1);
    }
    60%, 70% {
        -webkit-transform: translateX(0) scale(.7);
    }
    100% {
        -webkit-transform: translateX(-100%) scale(.7);
    }
}

@-moz-keyframes flowouttoleft {
    0% {
        -moz-transform: translateX(0) scale(1);
    }
    60%, 70% {
        -moz-transform: translateX(0) scale(.7);
    }
    100% {
        -moz-transform: translateX(-100%) scale(.7);
    }
}

@keyframes flowouttoleft {
    0% {
        transform: translateX(0) scale(1);
    }
    60%, 70% {
        transform: translateX(0) scale(.7);
    }
    100% {
        transform: translateX(-100%) scale(.7);
    }
}

@-webkit-keyframes flowouttoright {
    0% {
        -webkit-transform: translateX(0) scale(1);
    }
    60%, 70% {
        -webkit-transform: translateX(0) scale(.7);
    }
    100% {
        -webkit-transform: translateX(100%) scale(.7);
    }
}

@-moz-keyframes flowouttoright {
    0% {
        -moz-transform: translateX(0) scale(1);
    }
    60%, 70% {
        -moz-transform: translateX(0) scale(.7);
    }
    100% {
        -moz-transform: translateX(100%) scale(.7);
    }
}

@keyframes flowouttoright {
    0% {
        transform: translateX(0) scale(1);
    }
    60%, 70% {
        transform: translateX(0) scale(.7);
    }
    100% {
        transform: translateX(100%) scale(.7);
    }
}

@-webkit-keyframes flowinfromleft {
    0% {
        -webkit-transform: translateX(-100%) scale(.7);
    }
    30%, 40% {
        -webkit-transform: translateX(0) scale(.7);
    }
    100% {
        -webkit-transform: translateX(0) scale(1);
    }
}

@-moz-keyframes flowinfromleft {
    0% {
        -moz-transform: translateX(-100%) scale(.7);
    }
    30%, 40% {
        -moz-transform: translateX(0) scale(.7);
    }
    100% {
        -moz-transform: translateX(0) scale(1);
    }
}

@keyframes flowinfromleft {
    0% {
        transform: translateX(-100%) scale(.7);
    }
    30%, 40% {
        transform: translateX(0) scale(.7);
    }
    100% {
        transform: translateX(0) scale(1);
    }
}

@-webkit-keyframes flowinfromright {
    0% {
        -webkit-transform: translateX(100%) scale(.7);
    }
    30%, 40% {
        -webkit-transform: translateX(0) scale(.7);
    }
    100% {
        -webkit-transform: translateX(0) scale(1);
    }
}

@-moz-keyframes flowinfromright {
    0% {
        -moz-transform: translateX(100%) scale(.7);
    }
    30%, 40% {
        -moz-transform: translateX(0) scale(.7);
    }
    100% {
        -moz-transform: translateX(0) scale(1);
    }
}

@keyframes flowinfromright {
    0% {
        transform: translateX(100%) scale(.7);
    }
    30%, 40% {
        transform: translateX(0) scale(.7);
    }
    100% {
        transform: translateX(0) scale(1);
    }
}

.ui-field-contain,
.ui-mobile fieldset.ui-field-contain {
    display: block;
    position: relative;
    overflow: visible;
    clear: both;
    padding: .8em 0;
}

.ui-field-contain > label + [class*="ui-"],
.ui-field-contain .ui-controlgroup-controls {
    margin: 0;
}

.ui-field-contain:last-child {
    border-bottom-width: 0;
}

@media (min-width: 28em) {
    .ui-field-contain,
    .ui-mobile fieldset.ui-field-contain {
        padding: 0;
        margin: 1em 0;
        border-bottom-width: 0;
    }

    .ui-field-contain:before,
    .ui-field-contain:after {
        content: "";
        display: table;
    }

    .ui-field-contain:after {
        clear: both;
    }

    .ui-field-contain > label,
    .ui-field-contain .ui-controlgroup-label,
    .ui-field-contain > .ui-rangeslider > label {
        float: left;
        width: 20%;
        margin: .5em 2% 0 0;
    }

    .ui-popup .ui-field-contain > label,
    .ui-popup .ui-field-contain .ui-controlgroup-label,
    .ui-popup .ui-field-contain > .ui-rangeslider > label {
        float: none;
        width: auto;
        margin: 0 0 .4em;
    }

    .ui-field-contain > label + [class*="ui-"],
    .ui-field-contain .ui-controlgroup-controls {
        float: left;
        width: 78%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    /* ui-hide-label deprecated in 1.4. TODO: Remove in 1.5 */
    .ui-hide-label > label + [class*="ui-"],
    .ui-hide-label .ui-controlgroup-controls,
    .ui-popup .ui-field-contain > label + [class*="ui-"],
    .ui-popup .ui-field-contain .ui-controlgroup-controls {
        float: none;
        width: 100%;
    }

    .ui-field-contain > label + .ui-btn-inline {
        width: auto;
        margin-right: .625em;
    }
}

/* content configurations. */
.ui-grid-a,
.ui-grid-b,
.ui-grid-c,
.ui-grid-d,
.ui-grid-solo {
    overflow: hidden;
}

.ui-block-a,
.ui-block-b,
.ui-block-c,
.ui-block-d,
.ui-block-e {
    margin: 0;
    padding: 0;
    border: 0;
    float: left;
    min-height: 1px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* force new row */
.ui-block-a {
    clear: left;
}

ul.ui-grid-a,
ul.ui-grid-b,
ul.ui-grid-c,
ul.ui-grid-d,
ul.ui-grid-solo,
li.ui-block-a,
li.ui-block-b,
li.ui-block-c,
li.ui-block-d,
li.ui-block-e {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    list-style: none;
}

/* No margin in grids for 100% width button elements until we can use max-width: fill-available; */
[class*="ui-block-"] > button.ui-btn,
.ui-grid-solo > button.ui-btn {
    margin-right: 0;
    margin-left: 0;
}

.ui-grid-a > .ui-block-a,
.ui-grid-a > .ui-block-b {
    /* width: 49.95%; IE7 */
    /* margin-right: -.5px; BB5 */
    width: 50%;
}

.ui-grid-b > .ui-block-a,
.ui-grid-b > .ui-block-b,
.ui-grid-b > .ui-block-c {
    /* width: 33.25%; IE7 */
    /* margin-right: -.5px; BB5 */
    width: 33.333%;
}

.ui-grid-c > .ui-block-a,
.ui-grid-c > .ui-block-b,
.ui-grid-c > .ui-block-c,
.ui-grid-c > .ui-block-d {
    /* width: 24.925%; IE7 */
    /* margin-right: -.5px; BB5 */
    width: 25%;
}

.ui-grid-d > .ui-block-a,
.ui-grid-d > .ui-block-b,
.ui-grid-d > .ui-block-c,
.ui-grid-d > .ui-block-d,
.ui-grid-d > .ui-block-e {
    /* width: 19.925%; IE7 */
    width: 20%;
}

.ui-grid-solo > .ui-block-a {
    width: 100%;
    float: none;
}

/* preset breakpoint to switch to stacked grid styles below 35em (560px) */
@media (max-width: 35em) {
    .ui-responsive > .ui-block-a,
    .ui-responsive > .ui-block-b,
    .ui-responsive > .ui-block-c,
    .ui-responsive > .ui-block-d,
    .ui-responsive > .ui-block-e {
        width: 100%;
        float: none;
    }
}

/* fixed page header & footer configuration */
.ui-header-fixed,
.ui-footer-fixed {
    left: 0;
    right: 0;
    width: 100%;
    position: fixed;
    z-index: 1000;
}

.ui-header-fixed {
    top: -1px;
    padding-top: 1px;
}

.ui-header-fixed.ui-fixed-hidden {
    top: 0;
    padding-top: 0;
}

.ui-header-fixed .ui-btn-left,
.ui-header-fixed .ui-btn-right {
    margin-top: 1px;
}

.ui-header-fixed.ui-fixed-hidden .ui-btn-left,
.ui-header-fixed.ui-fixed-hidden .ui-btn-right {
    margin-top: 0;
}

.ui-footer-fixed {
    bottom: -1px;
    padding-bottom: 1px;
}

.ui-footer-fixed.ui-fixed-hidden {
    bottom: 0;
    padding-bottom: 0;
}

.ui-header-fullscreen,
.ui-footer-fullscreen {
    filter: Alpha(Opacity=90);
    opacity: .9;
}

/* updatePagePadding() will update the padding to actual height of header and footer. */
.ui-page-header-fixed {
    padding-top: 2.8125em;
}

.ui-page-footer-fixed {
    padding-bottom: 2.8125em;
}

.ui-page-header-fullscreen > .ui-content,
.ui-page-footer-fullscreen > .ui-content {
    padding: 0;
}

.ui-fixed-hidden {
    position: absolute;
}

/* Tap toggle: hide external fixed footer. See issue #6604 */
.ui-footer-fixed.ui-fixed-hidden {
    display: none;
}

.ui-page .ui-footer-fixed.ui-fixed-hidden {
    display: block
}

.ui-page-header-fullscreen .ui-fixed-hidden,
.ui-page-footer-fullscreen .ui-fixed-hidden {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.ui-header-fixed .ui-btn,
.ui-footer-fixed .ui-btn {
    z-index: 10;
}

/* workarounds for other widgets */
.ui-android-2x-fixed .ui-li-has-thumb {
    -webkit-transform: translate3d(0, 0, 0);
}

.ui-navbar {
    max-width: 100%;
}

.ui-navbar ul:before,
.ui-navbar ul:after {
    content: "";
    display: table;
}

.ui-navbar ul:after {
    clear: both;
}

.ui-navbar ul {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    display: block;
    border: 0;
    max-width: 100%;
    overflow: visible;
}

.ui-navbar li .ui-btn {
    font-size: 12.5px;
    display: block;
    margin: 0;
    border-right-width: 0;
}

.ui-navbar .ui-btn:focus {
    z-index: 1;
}

/* fixes gaps caused by subpixel problem */
.ui-navbar li:last-child .ui-btn {
    margin-right: -4px;
}

.ui-navbar li:last-child .ui-btn:after {
    margin-right: 4px;
}

.ui-content .ui-navbar li:last-child .ui-btn,
.ui-content .ui-navbar .ui-grid-duo .ui-block-b .ui-btn {
    border-right-width: 1px;
    margin-right: 0;
}

.ui-content .ui-navbar li:last-child .ui-btn:after,
.ui-content .ui-navbar .ui-grid-duo .ui-block-b .ui-btn:after {
    margin-right: 0;
}

.ui-navbar .ui-grid-duo .ui-block-a:last-child .ui-btn {
    border-right-width: 1px;
    margin-right: -1px;
}

.ui-navbar .ui-grid-duo .ui-block-a:last-child .ui-btn:after {
    margin-right: 1px;
}

.ui-navbar .ui-grid-duo .ui-btn {
    border-top-width: 0;
}

.ui-navbar .ui-grid-duo .ui-block-a:first-child .ui-btn,
.ui-navbar .ui-grid-duo .ui-block-a:first-child + .ui-block-b .ui-btn {
    border-top-width: 1px;
}

.ui-header .ui-navbar .ui-btn,
.ui-footer .ui-navbar .ui-btn {
    border-top-width: 0;
    border-bottom-width: 0;
}

.ui-header .ui-navbar .ui-grid-duo .ui-block-a:first-child .ui-btn,
.ui-footer .ui-navbar .ui-grid-duo .ui-block-a:first-child .ui-btn,
.ui-header .ui-navbar .ui-grid-duo .ui-block-a:first-child + .ui-block-b .ui-btn,
.ui-footer .ui-navbar .ui-grid-duo .ui-block-a:first-child + .ui-block-b .ui-btn {
    border-top-width: 0;
}

.ui-header .ui-title ~ .ui-navbar .ui-btn,
.ui-footer .ui-title ~ .ui-navbar .ui-btn,
.ui-header .ui-navbar .ui-grid-duo .ui-btn,
.ui-footer .ui-navbar .ui-grid-duo .ui-btn,
.ui-header .ui-title ~ .ui-navbar .ui-grid-duo .ui-block-a:first-child .ui-btn,
.ui-footer .ui-title ~ .ui-navbar .ui-grid-duo .ui-block-a:first-child .ui-btn,
.ui-header .ui-title ~ .ui-navbar .ui-grid-duo .ui-block-a:first-child + .ui-block-b .ui-btn,
.ui-footer .ui-title ~ .ui-navbar .ui-grid-duo .ui-block-a:first-child + .ui-block-b .ui-btn {
    border-top-width: 1px;
}

/* Hide the native input element */
.ui-input-btn input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    outline: 0;
    -webkit-border-radius: inherit;
    border-bottom-radius: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    background: #fff;
    background: rgba(255, 255, 255, 0);
    filter: Alpha(Opacity=0);
    opacity: .1;
    font-size: 1px;
    text-indent: -9999px;
    z-index: 2;
}

/* Fixes IE/WP filter alpha opacity bugs */
.ui-input-btn.ui-state-disabled input {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.ui-collapsible {
    margin: 0 -1em;
}

.ui-collapsible-inset,
.ui-collapsible-set {
    margin: .5em 0;
}

.ui-collapsible-heading {
    display: block;
    margin: 0;
    padding: 0;
    position: relative;
}

.ui-collapsible-heading .ui-btn {
    text-align: left;
    margin: 0;
    border-left-width: 0;
    border-right-width: 0;
}

.ui-collapsible-heading .ui-btn-icon-top,
.ui-collapsible-heading .ui-btn-icon-bottom {
    text-align: center;
}

.ui-collapsible-inset .ui-collapsible-heading .ui-btn {
    border-right-width: 1px;
    border-left-width: 1px;
}

.ui-collapsible-collapsed + .ui-collapsible:not(.ui-collapsible-inset) > .ui-collapsible-heading .ui-btn {
    border-top-width: 0;
}

.ui-collapsible-set .ui-collapsible:not(.ui-collapsible-inset) .ui-collapsible-heading .ui-btn {
    border-top-width: 1px;
}

.ui-collapsible-heading-status {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.ui-collapsible-content {
    display: block;
    margin: 0;
    padding: .5em 1em;
}

.ui-collapsible-themed-content .ui-collapsible-content {
    border-left-width: 0;
    border-right-width: 0;
    border-top-width: 0;
    border-bottom-width: 1px;
    border-style: solid;
}

.ui-collapsible-inset.ui-collapsible-themed-content .ui-collapsible-content {
    border-left-width: 1px;
    border-right-width: 1px;
}

.ui-collapsible-inset .ui-collapsible-content {
    margin: 0;
}

.ui-collapsible-content-collapsed {
    display: none;
}

.ui-collapsible-set > .ui-collapsible.ui-corner-all {
    -webkit-border-radius: 0;
    border-radius: 0;
}

.ui-collapsible-heading,
.ui-collapsible-heading > .ui-btn {
    -webkit-border-radius: inherit;
    border-radius: inherit;
}

.ui-collapsible-set .ui-collapsible.ui-first-child {
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
}

.ui-collapsible-content,
.ui-collapsible-set .ui-collapsible.ui-last-child {
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.ui-collapsible-themed-content:not(.ui-collapsible-collapsed) > .ui-collapsible-heading {
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

.ui-collapsible-set .ui-collapsible {
    margin: -1px -1em 0;
}

.ui-collapsible-set .ui-collapsible-inset {
    margin: -1px 0 0;
}

.ui-collapsible-set .ui-collapsible.ui-first-child {
    margin-top: 0;
}

.ui-controlgroup,
fieldset.ui-controlgroup {
    padding: 0;
    margin: .5em 0;
}

.ui-field-contain .ui-controlgroup,
.ui-field-contain fieldset.ui-controlgroup {
    margin: 0;
}

.ui-mini .ui-controlgroup-label {
    font-size: 16px;
}

.ui-controlgroup.ui-mini .ui-btn-icon-notext,
.ui-controlgroup .ui-mini.ui-btn-icon-notext {
    font-size: inherit;
}

.ui-controlgroup-controls .ui-btn:focus,
.ui-controlgroup-controls .ui-btn.ui-focus {
    z-index: 1;
}

.ui-controlgroup-controls li {
    list-style: none;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls {
    display: inline-block;
    vertical-align: middle;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls:before,
.ui-controlgroup-horizontal .ui-controlgroup-controls:after {
    content: "";
    display: table;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls:after {
    clear: both;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls button.ui-btn,
.ui-controlgroup-controls .ui-btn-icon-notext {
    width: auto;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls .ui-btn-icon-notext,
.ui-controlgroup-horizontal .ui-controlgroup-controls button.ui-btn-icon-notext {
    width: 1.5em;
}

.ui-controlgroup-controls .ui-btn-icon-notext {
    height: auto;
    padding: .7em 1em;
}

.ui-controlgroup-vertical .ui-controlgroup-controls .ui-btn {
    border-bottom-width: 0;
}

.ui-controlgroup-vertical .ui-controlgroup-controls .ui-btn.ui-last-child {
    border-bottom-width: 1px;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls .ui-btn {
    border-right-width: 0;
}

.ui-controlgroup-horizontal .ui-controlgroup-controls .ui-btn.ui-last-child {
    border-right-width: 1px;
}

.ui-controlgroup-controls .ui-btn-corner-all,
.ui-controlgroup-controls .ui-btn.ui-corner-all {
    -webkit-border-radius: 0;
    border-radius: 0;
}

.ui-controlgroup-vertical .ui-btn.ui-first-child {
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
}

.ui-controlgroup-vertical .ui-btn.ui-last-child {
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
}

.ui-controlgroup-horizontal .ui-btn.ui-first-child {
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.ui-controlgroup-horizontal .ui-btn.ui-last-child {
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
}

.ui-controlgroup-controls a.ui-shadow:not(:focus),
.ui-controlgroup-controls button.ui-shadow:not(:focus),
.ui-controlgroup-controls div.ui-shadow:not(.ui-focus) {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

/* Fixes legend not wrapping on IE10 */
.ui-controlgroup-label legend {
    max-width: 100%;
}

.ui-controlgroup-controls > label {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.ui-dialog {
    background: none !important; /* this is to ensure that dialog theming does not apply (by default at least) on the page div */
}

.ui-dialog-contain {
    width: 92.5%;
    max-width: 500px;
    margin: 10% auto 1em auto;
    padding: 0;
    position: relative;
    top: -1em;
}

.ui-dialog-contain > .ui-header,
.ui-dialog-contain > .ui-content,
.ui-dialog-contain > .ui-footer {
    display: block;
    position: relative;
    width: auto;
    margin: 0;
}

.ui-dialog-contain > .ui-header {
    overflow: hidden;
    z-index: 10;
    padding: 0;
    border-top-width: 0;
}

.ui-dialog-contain > .ui-footer {
    z-index: 10;
    padding: 0 1em;
    border-bottom-width: 0;
}

.ui-popup-open .ui-header-fixed,
.ui-popup-open .ui-footer-fixed {
    position: absolute !important; /* See issues #4816, #4844 and #4874 and popup.js */
}

.ui-popup-screen {
    background-image: url(); /* Necessary to set some form of background to ensure element is clickable in IE6/7. While legacy IE won't understand the data-URI'd image, it ensures no additional requests occur in all other browsers with little overhead. */
    top: 0;
    left: 0;
    right: 0;
    bottom: 1px;
    position: absolute;
    filter: Alpha(Opacity=0);
    opacity: 0;
    z-index: 1099;
}

.ui-popup-screen.in {
    opacity: 0.5;
    filter: Alpha(Opacity=50);
}

.ui-popup-screen.out {
    opacity: 0;
    filter: Alpha(Opacity=0);
}

.ui-popup-container {
    z-index: 1100;
    display: inline-block;
    position: absolute;
    padding: 0;
    outline: 0;
}

.ui-popup {
    position: relative;
}

.ui-popup.ui-body-inherit {
    border-width: 1px;
    border-style: solid;
}

.ui-popup-hidden {
    left: 0;
    top: 0;
    position: absolute !important;
    visibility: hidden;
}

.ui-popup-truncate {
    height: 1px;
    width: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.ui-popup.ui-content,
.ui-popup .ui-content {
    overflow: visible;
}

.ui-popup > .ui-header {
    border-top-width: 0;
}

.ui-popup > .ui-footer {
    border-bottom-width: 0;
}

.ui-popup > p,
.ui-popup > h1,
.ui-popup > h2,
.ui-popup > h3,
.ui-popup > h4,
.ui-popup > h5,
.ui-popup > h6 {
    margin: .5em .4375em;
}

.ui-popup > span {
    display: block;
    margin: .5em .4375em;
}

.ui-popup-container .ui-content > p,
.ui-popup-container .ui-content > h1,
.ui-popup-container .ui-content > h2,
.ui-popup-container .ui-content > h3,
.ui-popup-container .ui-content > h4,
.ui-popup-container .ui-content > h5,
.ui-popup-container .ui-content > h6 {
    margin: .5em 0;
}

.ui-popup-container .ui-content > span {
    margin: 0;
}

.ui-popup-container .ui-content > p:first-child,
.ui-popup-container .ui-content > h1:first-child,
.ui-popup-container .ui-content > h2:first-child,
.ui-popup-container .ui-content > h3:first-child,
.ui-popup-container .ui-content > h4:first-child,
.ui-popup-container .ui-content > h5:first-child,
.ui-popup-container .ui-content > h6:first-child {
    margin-top: 0;
}

.ui-popup-container .ui-content > p:last-child,
.ui-popup-container .ui-content > h1:last-child,
.ui-popup-container .ui-content > h2:last-child,
.ui-popup-container .ui-content > h3:last-child,
.ui-popup-container .ui-content > h4:last-child,
.ui-popup-container .ui-content > h5:last-child,
.ui-popup-container .ui-content > h6:last-child {
    margin-bottom: 0;
}

.ui-popup > img {
    max-width: 100%;
    max-height: 100%;
    vertical-align: middle;
}

.ui-popup:not(.ui-content) > img:only-child,
.ui-popup:not(.ui-content) > .ui-btn-left:first-child + img:last-child,
.ui-popup:not(.ui-content) > .ui-btn-right:first-child + img:last-child {
    -webkit-border-radius: inherit;
    border-radius: inherit;
}

.ui-popup iframe {
    vertical-align: middle;
}

.ui-popup > .ui-btn-left,
.ui-popup > .ui-btn-right {
    position: absolute;
    top: -11px;
    margin: 0;
    z-index: 1101;
}

.ui-popup > .ui-btn-left {
    left: -11px;
}

.ui-popup > .ui-btn-right {
    right: -11px;
}

/* Dimensions related to the popup arrow
-----------------------------------------------------------------------------------------------------------*/
/* desired triangle height: 10px */
/**
 * guide for the arrow - its width, height, and offset are theme-dependent and
 * should be expessed as left, right, top, bottom, so that the element bearing
 * such a class becomes stretched inside its parent position: relative element.
 * The left/top/right/bottom specified below should reflect the corresponding
 * border radii and so it leaves room for the shadow:
 *     ..--------------------..
 *   ."        ^ top           ".
 *  /          v                 \
 * |     +------------------+     |
 * |     |                  |     |
 * | left|                  |right|
 * |<--->|                  |<--->|
 * |     +------------------+     |
 *  \          ^                 /
 *   `.        v bottom        .'
 *     ""--------------------""
 * The idea is that the top/left of the arrow container box does not move to a
 * coordinate smaller than the top/left of the guide and the right/bottom of
 * the arrow container box does not move to a coordinate larger than the
 * bottom/right of the guide. This will help us avoid the following situation:
 *        ..--------------------..
 *      ."        ^ top           ".
 *   /|/          v                 \
 *  / |     +------------------+     |
 *  \ |     |                  |     |
 *   \| left|                  |right|
 *    |<--->|                  |<--->|
 *    |     +------------------+     |
 *     \          ^                 /
 *      `.        v bottom        .'
 *        ""--------------------""
 * The arrow should not receive a top/left coordinate such that it is too close
 * to one of the corners, because then at first the shadow of the arrow and,
 * given a coordinate even closer to the corner, even the body of the arrow will
 * "stick out" of the corner of the popup. The guide provides a hint to the
 * arrow positioning code as to which range of values is acceptable for the
 * arrow container's top/left coordinate.
 **/
.ui-popup-arrow-container {
    width: 20px;
    height: 20px;
}

/* aside from the "infinities" (-1000,2000), triangle height is used */
.ui-popup-arrow-container.ui-popup-arrow-l {
    left: -10px;
    clip: rect(-1000px, 10px, 2000px, -1000px);
}

.ui-popup-arrow-container.ui-popup-arrow-t {
    top: -10px;
    clip: rect(-1000px, 2000px, 10px, -1000px);
}

.ui-popup-arrow-container.ui-popup-arrow-r {
    right: -10px;
    clip: rect(-1000px, 2000px, 2000px, 10px);
}

.ui-popup-arrow-container.ui-popup-arrow-b {
    bottom: -10px;
    clip: rect(10px, 2000px, 1000px, -1000px);
}

/**
 * For each side, the arrow is twice the desired size and its corner is aligned
 * with the edge of the container:
 *                                           
 *           /\         /\                +----+	     /\
 *          /  \       /  \ 					    | /\ |top   /  \
 *      +----+  \     /  +----+       +-->|/  \|     /    \
 *  left| /  |   \   /   |  \ |right  |   |    |    /      \
 *      |/   |    \ /    |   \| 			|  /|    |\  /        \
 *      |\   |    / \    |   /| 			| / +----+ \ \ +----+ /
 *      | \  |   /   \   |  / |       | \        /  \|    |/
 *      +----+  /     \  +----+       |  \      /    |    |
 *       ^  \  /       \  /  ^        |   \    /  +->|\  /|
 *       |   \/         \/   |        |    \  /   |  | \/ |bottom
 *       |                   |        |     \/    |  +----+
 *       +-------------------+--------+-----------+
 *                           |
 *                    arrow container
 *                     (clips arrow)
 **/
.ui-popup-arrow-container .ui-popup-arrow {
    /* (4*desired triangle height)/sqrt(2) - does not account for border - centred within the outer rectangle */
    width: 28.284271247px;
    height: 28.284271247px;
    border-width: 1px;
    border-style: solid;
}

.ui-popup-arrow-container.ui-popup-arrow-t .ui-popup-arrow {
    left: -4.142135623px;
    top: 5.857864376px;
}

.ui-popup-arrow-container.ui-popup-arrow-b .ui-popup-arrow {
    left: -4.142135623px;
    top: -14.142135623px;
}

.ui-popup-arrow-container.ui-popup-arrow-l .ui-popup-arrow {
    left: 5.857864376px;
    top: -4.142135623px;
}

.ui-popup-arrow-container.ui-popup-arrow-r .ui-popup-arrow {
    left: -14.142135623px;
    top: -4.142135623px;
}

/* Fix rotation center for oldIE - see http://www.useragentman.com/IETransformsTranslator/ */
.ui-popup-arrow-container.ui-popup-arrow-t.ie .ui-popup-arrow {
    margin-left: -5.857864376269049px;
    margin-top: -7.0710678118654755px;
}

.ui-popup-arrow-container.ui-popup-arrow-b.ie .ui-popup-arrow {
    margin-left: -5.857864376269049px;
    margin-top: -4.142135623730951px;
}

.ui-popup-arrow-container.ui-popup-arrow-l.ie .ui-popup-arrow {
    margin-left: -7.0710678118654755px;
    margin-top: -5.857864376269049px;
}

.ui-popup-arrow-container.ui-popup-arrow-r.ie .ui-popup-arrow {
    margin-left: -4.142135623730951px;
    margin-top: -5.857864376269049px;
}

.ui-popup-arrow-background {
    /* desired triangle height is used here */
    width: 20px;
    height: 20px;
}

.ui-popup-arrow-container.ui-popup-arrow-t .ui-popup-arrow-background
.ui-popup-arrow-container.ui-popup-arrow-b .ui-popup-arrow-background {
    background-position: 0 10px;
}

.ui-popup-arrow-container.ui-popup-arrow-l .ui-popup-arrow-background,
.ui-popup-arrow-container.ui-popup-arrow-r .ui-popup-arrow-background {
    background-position: 10px 0;
}

/* structure */
.ui-popup > .ui-popup-arrow-guide {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    visibility: hidden;
}

.ui-popup-arrow-container {
    position: absolute;
}

.ui-popup-arrow {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    overflow: hidden;
    box-sizing: border-box;
}

.ui-popup-arrow-container.ie .ui-popup-arrow {
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865474, M12=-0.7071067811865477, M21=0.7071067811865477, M22=0.7071067811865474, SizingMethod='auto expand')";
    filter: progid:DXImageTransform.Microsoft.Matrix(
            M11=0.7071067811865474,
            M12=-0.7071067811865477,
            M21=0.7071067811865477,
            M22=0.7071067811865474,
            SizingMethod='auto expand');
}

.ui-popup-arrow-background {
    position: absolute;
    border: 0;
}

.ui-popup-arrow-container.ie .ui-popup-arrow-background {
    background: none;
}

.ui-popup-arrow-container.ui-popup-arrow-t .ui-popup-arrow-background,
.ui-popup-arrow-container.ui-popup-arrow-b .ui-popup-arrow-background {
    /* Undo rotation and reflect in x axis */
    -webkit-transform: rotate(-45deg) scale(1, -1);
    -moz-transform: rotate(-45deg) scale(1, -1);
    -ms-transform: rotate(-45deg) scale(1, -1);
    transform: rotate(-45deg) scale(1, -1);
}

.ui-popup-arrow-container.ui-popup-arrow-t.ie .ui-popup-arrow-background,
.ui-popup-arrow-container.ui-popup-arrow-b.ie .ui-popup-arrow-background {
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.7071067811865483, M12=-0.7071067811865467, M21=-0.7071067811865467, M22=-0.7071067811865483, SizingMethod='auto expand')";
    filter: progid:DXImageTransform.Microsoft.Matrix(
            M11=0.7071067811865483,
            M12=-0.7071067811865467,
            M21=-0.7071067811865467,
            M22=-0.7071067811865483,
            SizingMethod='auto expand');
}

.ui-popup-arrow-container.ui-popup-arrow-l .ui-popup-arrow-background,
.ui-popup-arrow-container.ui-popup-arrow-r .ui-popup-arrow-background {
    /* Undo rotation and reflect in y axis */
    -webkit-transform: rotate(-45deg) scale(-1, 1);
    -moz-transform: rotate(-45deg) scale(-1, 1);
    -ms-transform: rotate(-45deg) scale(-1, 1);
    transform: rotate(-45deg) scale(-1, 1);
}

.ui-popup-arrow-container.ui-popup-arrow-l.ie .ui-popup-arrow-background,
.ui-popup-arrow-container.ui-popup-arrow-r.ie .ui-popup-arrow-background {
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=-0.7071067811865483, M12=0.7071067811865467, M21=0.7071067811865467, M22=0.7071067811865483, SizingMethod='auto expand')";
    filter: progid:DXImageTransform.Microsoft.Matrix(
            M11=-0.7071067811865483,
            M12=0.7071067811865467,
            M21=0.7071067811865467,
            M22=0.7071067811865483,
            SizingMethod='auto expand');
}

@-moz-document url-prefix() {
    .ui-select .ui-btn select {
        opacity: 0.0001;
    }
}

/* Display none because of issues with IE/WP's filter alpha opacity */
.ui-select .ui-state-disabled select {
    display: none;
}

/* Because we add all classes of the select and option elements to the span... */
.ui-select span.ui-state-disabled {
    filter: Alpha(Opacity=100);
    opacity: 1;
}

.ui-select .ui-btn.ui-select-nativeonly {
    border-radius: 0;
    border: 0;
}

.ui-select .ui-btn.ui-select-nativeonly select {
    opacity: 1;
    text-indent: 0;
    display: block;
}

/* ui-li-count is styled in the listview CSS. We set padding and offset here because select supports icon position while listview doesn't. */
.ui-select .ui-li-has-count.ui-btn {
    padding-right: 2.8125em;
}

.ui-select .ui-li-has-count.ui-btn-icon-right {
    padding-right: 4.6875em;
}

.ui-select .ui-btn-icon-right .ui-li-count {
    right: 3.2em;
}

/* We set the rules for the span as well to fix an issue on Chrome with text-overflow ellipsis for the button in combination with text-align center. */
.ui-select .ui-btn > span:not(.ui-li-count) {
    display: block;
    text-overflow: ellipsis;
    overflow: hidden !important;
    white-space: nowrap;
}

.ui-selectmenu.ui-popup {
    min-width: 11em;
}

.ui-selectmenu .ui-dialog-contain {
    overflow: hidden;
}

.ui-selectmenu .ui-header {
    margin: 0;
    padding: 0;
    border-width: 0;
}

.ui-selectmenu.ui-dialog .ui-header {
    z-index: 1;
    position: relative;
}

.ui-selectmenu.ui-popup .ui-header {
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* when no placeholder is defined in a multiple select, the header height doesn't even extend past the close button.  this shim's content in there */
.ui-selectmenu.ui-popup .ui-header h1:after {
    content: '.';
    visibility: hidden;
}

.ui-selectmenu .ui-header .ui-title {
    margin: 0 2.875em;
}

.ui-selectmenu.ui-dialog .ui-content {
    overflow: visible;
    z-index: 1;
}

.ui-selectmenu .ui-selectmenu-list {
    margin: 0;
    -webkit-border-radius: inherit;
    border-radius: inherit;
}

.ui-header:not(.ui-screen-hidden) + .ui-selectmenu-list {
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
}

.ui-header.ui-screen-hidden + .ui-selectmenu-list li.ui-first-child .ui-btn {
    border-top-width: 0;
}

.ui-selectmenu .ui-selectmenu-list li.ui-last-child .ui-btn {
    border-bottom-width: 0;
}

.ui-selectmenu .ui-btn.ui-li-divider {
    cursor: default;
}

.ui-selectmenu .ui-selectmenu-placeholder {
    display: none;
}

.ui-listview,
.ui-listview > li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ui-content .ui-listview,
.ui-panel-inner > .ui-listview {
    margin: -1em;
}

.ui-content .ui-listview-inset,
.ui-panel-inner > .ui-listview-inset {
    margin: 1em 0;
}

.ui-collapsible-content > .ui-listview {
    margin: -.5em -1em;
}

.ui-collapsible-content > .ui-listview-inset {
    margin: .5em 0;
}

.ui-listview > li {
    display: block;
    position: relative;
    overflow: visible;
}

.ui-listview > .ui-li-static,
.ui-listview > .ui-li-divider,
.ui-listview > li > a.ui-btn {
    margin: 0;
    display: block;
    position: relative;
    text-align: left;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.ui-listview > li > .ui-btn:focus {
    z-index: 1;
}

.ui-listview > .ui-li-static,
.ui-listview > .ui-li-divider,
.ui-listview > li > a.ui-btn {
    border-width: 1px 0 0 0;
    border-style: solid;
}

.ui-listview-inset > .ui-li-static,
.ui-listview-inset > .ui-li-divider,
.ui-listview-inset > li > a.ui-btn {
    border-right-width: 1px;
    border-left-width: 1px;
}

.ui-listview > .ui-li-static.ui-last-child,
.ui-listview > .ui-li-divider.ui-last-child,
.ui-listview > li.ui-last-child > a.ui-btn {
    border-bottom-width: 1px;
}

.ui-collapsible-content > .ui-listview:not(.ui-listview-inset) > li.ui-first-child,
.ui-collapsible-content > .ui-listview:not(.ui-listview-inset) > li.ui-first-child > a.ui-btn {
    border-top-width: 0;
}

.ui-collapsible-themed-content .ui-listview:not(.ui-listview-inset) > li.ui-last-child,
.ui-collapsible-themed-content .ui-listview:not(.ui-listview-inset) > li.ui-last-child > a.ui-btn {
    border-bottom-width: 0;
}

.ui-listview > li.ui-first-child,
.ui-listview > li.ui-first-child > a.ui-btn {
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
}

.ui-listview > li.ui-last-child,
.ui-listview > li.ui-last-child > a.ui-btn {
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.ui-listview > li.ui-li-has-alt > a.ui-btn {
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
}

.ui-listview > li.ui-first-child > a.ui-btn + a.ui-btn {
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -webkit-border-top-right-radius: inherit;
    border-top-right-radius: inherit;
}

.ui-listview > li.ui-last-child > a.ui-btn + a.ui-btn {
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
    -webkit-border-bottom-right-radius: inherit;
    border-bottom-right-radius: inherit;
}

.ui-listview > li.ui-first-child img:first-child:not(.ui-li-icon) {
    -webkit-border-top-left-radius: inherit;
    border-top-left-radius: inherit;
}

.ui-listview > li.ui-last-child img:first-child:not(.ui-li-icon) {
    -webkit-border-bottom-left-radius: inherit;
    border-bottom-left-radius: inherit;
}

.ui-collapsible-content > .ui-listview:not(.ui-listview-inset) {
    -webkit-border-radius: inherit;
    border-radius: inherit;
}

.ui-listview > .ui-li-static {
    padding: .7em 1em;
}

.ui-listview > .ui-li-divider {
    padding: .5em 1.143em;
    font-size: 14px;
    font-weight: bold;
    cursor: default;
    outline: 0; /* Dividers in custom selectmenus have tabindex */
}

.ui-listview > .ui-li-has-count > .ui-btn,
.ui-listview > .ui-li-static.ui-li-has-count,
.ui-listview > .ui-li-divider.ui-li-has-count {
    padding-right: 2.8125em;
}

.ui-listview > .ui-li-has-count > .ui-btn-icon-right {
    padding-right: 4.6875em;
}

.ui-listview > .ui-li-has-thumb > .ui-btn,
.ui-listview > .ui-li-static.ui-li-has-thumb {
    min-height: 3.625em;
    padding-left: 6.25em;
}

/* ui-li-has-icon deprecated in 1.4. TODO: remove in 1.5 */
.ui-listview > .ui-li-has-icon > .ui-btn,
.ui-listview > .ui-li-static.ui-li-has-icon {
    min-height: 1.25em;
    padding-left: 2.5em;
}

/* Used by both listview and custom multiple select button */
.ui-li-count {
    position: absolute;
    font-size: 12.5px;
    font-weight: bold;
    text-align: center;
    border-width: 1px;
    border-style: solid;
    padding: 0 .48em;
    line-height: 1.6em;
    min-height: 1.6em;
    min-width: .64em;
    right: .8em;
    top: 50%;
    margin-top: -.88em;
}

.ui-listview .ui-btn-icon-right .ui-li-count {
    right: 3.2em;
}

.ui-listview .ui-li-has-thumb > img:first-child,
.ui-listview .ui-li-has-thumb > .ui-btn > img:first-child,
.ui-listview .ui-li-has-thumb .ui-li-thumb {
    position: absolute;
    left: 0;
    top: 0;
    max-height: 5em;
    max-width: 5em;
}

/* ui-li-has-icon deprecated in 1.4. TODO: remove in 1.5 */
.ui-listview > .ui-li-has-icon > img:first-child,
.ui-listview > .ui-li-has-icon > .ui-btn > img:first-child {
    position: absolute;
    left: .625em;
    top: .9em;
    max-height: 1em;
    max-width: 1em;
}

.ui-listview > li h1,
.ui-listview > li h2,
.ui-listview > li h3,
.ui-listview > li h4,
.ui-listview > li h5,
.ui-listview > li h6 {
    font-size: 1em;
    font-weight: bold;
    display: block;
    margin: .45em 0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.ui-listview > li p {
    font-size: .75em;
    font-weight: normal;
    display: block;
    margin: .6em 0;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.ui-listview .ui-li-aside {
    position: absolute;
    top: 1em;
    right: 3.333em;
    margin: 0;
    text-align: right;
}

.ui-listview > li.ui-li-has-alt > .ui-btn {
    margin-right: 2.5em;
    border-right-width: 0;
}

.ui-listview > li.ui-li-has-alt > .ui-btn + .ui-btn {
    position: absolute;
    width: 2.5em;
    height: 100%;
    min-height: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-left-width: 1px;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    z-index: 2;
}

.ui-listview-inset > li.ui-li-has-alt > .ui-btn + .ui-btn {
    border-right-width: 1px;
}

.ui-listview > li.ui-li-has-alt > .ui-btn + .ui-btn:focus {
    z-index: 3;
}

ol.ui-listview,
ol.ui-listview > .ui-li-divider {
    counter-reset: listnumbering;
}

ol.ui-listview > li > .ui-btn,
ol.ui-listview > li.ui-li-static {
    vertical-align: middle;
}

ol.ui-listview > li > .ui-btn:before,
ol.ui-listview > li.ui-li-static:before,
ol.ui-listview > li.ui-field-contain > label:before,
ol.ui-listview > li.ui-field-contain > .ui-controlgroup-label:before {
    display: inline-block;
    font-size: .9em;
    font-weight: normal;
    padding-right: .3em;
    min-width: 1.4em;
    line-height: 1.5;
    vertical-align: middle;
    counter-increment: listnumbering;
    content: counter(listnumbering) ".";
}

ol.ui-listview > li.ui-field-contain:before {
    content: none;
    display: none;
}

ol.ui-listview > li h1:first-child,
ol.ui-listview > li h2:first-child,
ol.ui-listview > li h3:first-child,
ol.ui-listview > li h4:first-child,
ol.ui-listview > li h5:first-child,
ol.ui-listview > li h6:first-child,
ol.ui-listview > li p:first-child,
ol.ui-listview > li img:first-child + * {
    display: inline-block;
    vertical-align: middle;
}

ol.ui-listview > li h1:first-child ~ *,
ol.ui-listview > li h2:first-child ~ *,
ol.ui-listview > li h3:first-child ~ *,
ol.ui-listview > li h4:first-child ~ *,
ol.ui-listview > li h5:first-child ~ *,
ol.ui-listview > li h6:first-child ~ *,
ol.ui-listview > li p:first-child ~ *,
ol.ui-listview > li img:first-child + * ~ * {
    margin-top: 0;
    text-indent: 2.04em; /* (1.4em + .3em) * .9em / .75em */
}

html .ui-filterable + .ui-listview,
html .ui-filterable.ui-listview {
    margin-top: .5em;
}

.ui-collapsible-content > form.ui-filterable {
    margin-top: -.5em;
}

.ui-collapsible-content > .ui-input-search.ui-filterable {
    margin-top: 0;
}

.ui-collapsible-content > .ui-filterable + .ui-listview:not(.ui-listview-inset) > li.ui-first-child,
.ui-collapsible-content > .ui-filterable + .ui-listview:not(.ui-listview-inset) > li.ui-first-child > a.ui-btn,
.ui-collapsible-content > .ui-filterable.ui-listview:not(.ui-listview-inset) > li.ui-first-child,
.ui-collapsible-content > .ui-filterable.ui-listview:not(.ui-listview-inset) > li.ui-first-child > a.ui-btn {
    border-top-width: 1px;
}

div.ui-slider {
    height: 30px;
    margin: .5em 0;
    padding: 0;
    -ms-touch-action: pan-y pinch-zoom double-tap-zoom;
}

div.ui-slider:before,
div.ui-slider:after {
    content: "";
    display: table;
}

div.ui-slider:after {
    clear: both;
}

input.ui-slider-input {
    display: block;
    float: left;
    font-size: 14px;
    font-weight: bold;
    margin: 0;
    padding: 4px;
    width: 40px;
    height: 20px;
    line-height: 20px;
    border-width: 1px;
    border-style: solid;
    outline: 0;
    text-align: center;
    vertical-align: text-bottom;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    -ms-box-sizing: content-box;
    box-sizing: content-box;
}

.ui-slider-input::-webkit-outer-spin-button,
.ui-slider-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.ui-slider-track {
    position: relative;
    overflow: visible;
    border-width: 1px;
    border-style: solid;
    height: 15px;
    margin: 0 15px 0 68px;
    top: 6px;
}

.ui-slider-track.ui-mini {
    height: 12px;
    top: 8px;
}

.ui-slider-track .ui-slider-bg {
    height: 100%;
}

/* High level of specificity to override button margins in grids */
.ui-slider-track .ui-btn.ui-slider-handle {
    position: absolute;
    z-index: 1;
    top: 50%;
    width: 28px;
    height: 28px;
    margin: -15px 0 0 -15px;
    outline: 0;
    padding: 0;
}

.ui-slider-track.ui-mini .ui-slider-handle {
    height: 14px;
    width: 14px;
    margin: -8px 0 0 -8px;
}

select.ui-slider-switch {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

div.ui-slider-switch {
    display: inline-block;
    height: 32px;
    width: 5.8em;
    top: 0;
}

/* reset the clearfix */
div.ui-slider-switch:before,
div.ui-slider-switch:after {
    display: none;
    clear: none;
}

div.ui-slider-switch.ui-mini {
    height: 29px;
    top: 0;
}

.ui-slider-inneroffset {
    margin: 0 16px;
    position: relative;
    z-index: 1;
}

.ui-slider-switch.ui-mini .ui-slider-inneroffset {
    margin: 0 15px 0 14px;
}

.ui-slider-switch .ui-btn.ui-slider-handle {
    margin: 1px 0 0 -15px;
}

.ui-slider-switch.ui-mini .ui-slider-handle {
    width: 25px;
    height: 25px;
    margin: 1px 0 0 -13px;
    padding: 0;
}

.ui-slider-handle-snapping {
    -webkit-transition: left 70ms linear;
    -moz-transition: left 70ms linear;
    transition: left 70ms linear;
}

.ui-slider-switch .ui-slider-label {
    position: absolute;
    text-align: center;
    width: 100%;
    overflow: hidden;
    font-size: 16px;
    top: 0;
    line-height: 2;
    min-height: 100%;
    white-space: nowrap;
    cursor: pointer;
}

.ui-slider-switch.ui-mini .ui-slider-label {
    font-size: 14px;
}

.ui-slider-switch .ui-slider-label-a {
    z-index: 1;
    left: 0;
    text-indent: -1.5em;
}

.ui-slider-switch .ui-slider-label-b {
    z-index: 0;
    right: 0;
    text-indent: 1.5em;
}

/* The corner radii for ui-slider-switch/track can be specified in theme CSS. The bg and handle inherits. */
.ui-slider-track .ui-slider-bg,
.ui-slider-switch .ui-slider-label,
.ui-slider-switch .ui-slider-inneroffset,
.ui-slider-handle {
    -webkit-border-radius: inherit;
    border-radius: inherit;
}

.ui-field-contain div.ui-slider-switch {
    margin: 0;
}

@media (min-width: 28em) {
    /* ui-hide-label deprecated in 1.4. TODO: Remove in 1.5 */
    .ui-field-contain div.ui-slider-switch,
    .ui-field-contain.ui-hide-label div.ui-slider-switch {
        display: inline-block;
        width: 5.8em;
    }
}

/* Resolves issue #5166: Added to support issue introduced in Firefox 15. We can likely remove this in the future. */
.ui-input-text input::-moz-placeholder,
.ui-input-search input::-moz-placeholder,
textarea.ui-input-text::-moz-placeholder {
    color: #aaa;
}

/* Same for IE10 */
.ui-input-text input:-ms-input-placeholder,
.ui-input-search input:-ms-input-placeholder,
textarea.ui-input-text:-ms-input-placeholder {
    color: #aaa;
}

/* Resolves issue #5131: Width of textinput depends on its type,
for Android 4.1 */
.ui-input-text input[type=number]::-webkit-outer-spin-button {
    margin: 0;
}

/* Resolves issue #5756: Textinput in IE10 has a default clear button */
.ui-input-text input::-ms-clear,
.ui-input-search input::-ms-clear {
    display: none;
}

.ui-input-text input:focus,
.ui-input-search input:focus {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.ui-textinput-autogrow-resize {
    -webkit-transition: height 0.25s;
    -o-transition: height 0.25s;
    -moz-transition: height 0.25s;
    transition: height 0.25s;
}

.ui-flipswitch {
    display: inline-block;
    vertical-align: middle;
    width: 5.875em; /* Override this and padding-left in next rule if you use labels other than "on/off" and need more space */
    height: 1.875em;
    border-width: 1px;
    border-style: solid;
    margin: .5em 0;
    overflow: hidden;
    -webkit-transition-property: padding, width, background-color, color, border-color;
    -moz-transition-property: padding, width, background-color, color, border-color;
    -o-transition-property: padding, width, background-color, color, border-color;
    transition-property: padding, width, background-color, color, border-color;
    -webkit-transition-duration: 100ms;
    -moz-transition-duration: 100ms;
    -o-transition-duration: 100ms;
    transition-duration: 100ms;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

.ui-flipswitch.ui-flipswitch-active {
    padding-left: 4em; /* Override this and width in previous rule if you use labels other than "on/off" and need more space */
    width: 1.875em;
}

.ui-flipswitch-input {
    position: absolute;
    height: 1px;
    width: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    border: 0;
    outline: 0;
    filter: Alpha(Opacity=0);
    opacity: 0;
}

.ui-flipswitch .ui-btn.ui-flipswitch-on,
.ui-flipswitch .ui-flipswitch-off {
    float: left;
    height: 1.75em;
    margin: .0625em;
    line-height: 1.65em;
}

.ui-flipswitch .ui-btn.ui-flipswitch-on {
    width: 1.75em;
    padding: 0;
    text-indent: -2.6em; /* Override this to center text if you use a label other than "on" */
    text-align: left;
    border-width: 1px;
    border-style: solid;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: inherit;
    overflow: visible;
    color: inherit;
    text-shadow: inherit;
}

.ui-flipswitch .ui-flipswitch-off {
    padding: 1px;
    text-indent: 1em; /* Override this to center text if you use a label other than "off" */
}

@media (min-width: 28em) {
    .ui-field-contain > label + .ui-flipswitch {
        display: inline-block;
        width: 5.875em; /* If you override the width for .ui-flipswitch you should repeat the same value here */
        -webkit-box-sizing: content-box;
        -moz-box-sizing: content-box;
        -ms-box-sizing: content-box;
        box-sizing: content-box;
    }

    .ui-field-contain .ui-flipswitch.ui-flipswitch-active {
        width: 1.875em;
    }
}

.ui-table {
    border: 0;
    border-collapse: collapse;
    padding: 0;
    width: 100%;
}

.ui-table th,
.ui-table td {
    line-height: 1.5em;
    text-align: left;
    padding: .4em .5em;
    vertical-align: top;
}

.ui-table th .ui-btn,
.ui-table td .ui-btn {
    line-height: normal;
}

.ui-table th {
    font-weight: bold;
}

.ui-table caption {
    text-align: left;
    margin-bottom: 1.4em;
    opacity: .5;
}

/*
 Styles for the table columntoggle mode
*/
.ui-table-columntoggle-btn {
    float: right;
    margin-bottom: .8em;
}

/* Remove top/bottom margins around the fieldcontain on check list */
.ui-table-columntoggle-popup fieldset {
    margin: 0;
}

.ui-table-columntoggle {
    clear: both;
}

/* Hide all prioritized columns by default */
@media only all {
    th.ui-table-priority-6,
    td.ui-table-priority-6,
    th.ui-table-priority-5,
    td.ui-table-priority-5,
    th.ui-table-priority-4,
    td.ui-table-priority-4,
    th.ui-table-priority-3,
    td.ui-table-priority-3,
    th.ui-table-priority-2,
    td.ui-table-priority-2,
    th.ui-table-priority-1,
    td.ui-table-priority-1 {
        display: none;
    }
}

/* Preset breakpoints if ".ui-responsive" class added to table */
/* Show priority 1 at 320px (20em x 16px) */
@media screen and (min-width: 20em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-1,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-1 {
        display: table-cell;
    }
}

/* Show priority 2 at 480px (30em x 16px) */
@media screen and (min-width: 30em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-2,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-2 {
        display: table-cell;
    }
}

/* Show priority 3 at 640px (40em x 16px) */
@media screen and (min-width: 40em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-3,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-3 {
        display: table-cell;
    }
}

/* Show priority 4 at 800px (50em x 16px) */
@media screen and (min-width: 50em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-4,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-4 {
        display: table-cell;
    }
}

/* Show priority 5 at 960px (60em x 16px) */
@media screen and (min-width: 60em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-5,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-5 {
        display: table-cell;
    }
}

/* Show priority 6 at 1,120px (70em x 16px) */
@media screen and (min-width: 70em) {
    .ui-table-columntoggle.ui-responsive th.ui-table-priority-6,
    .ui-table-columntoggle.ui-responsive td.ui-table-priority-6 {
        display: table-cell;
    }
}

/* Unchecked manually: Always hide */
.ui-table-columntoggle th.ui-table-cell-hidden,
.ui-table-columntoggle td.ui-table-cell-hidden,
.ui-table-columntoggle.ui-responsive th.ui-table-cell-hidden,
.ui-table-columntoggle.ui-responsive td.ui-table-cell-hidden {
    display: none;
}

/* Checked manually: Always show */
.ui-table-columntoggle th.ui-table-cell-visible,
.ui-table-columntoggle td.ui-table-cell-visible,
.ui-table-columntoggle.ui-responsive th.ui-table-cell-visible,
.ui-table-columntoggle.ui-responsive td.ui-table-cell-visible {
    display: table-cell;
}

/*
 Styles for the table columntoggle mode
*/
.ui-table-reflow td .ui-table-cell-label,
.ui-table-reflow th .ui-table-cell-label {
    display: none;
}

/* Mobile first styles: Begin with the stacked presentation at narrow widths */
@media only all {
    /* Hide the table headers */
    .ui-table-reflow thead td,
    .ui-table-reflow thead th {
        display: none;
    }

    /* Show the table cells as a block level element */
    .ui-table-reflow td,
    .ui-table-reflow th {
        text-align: left;
        display: block;
    }

    /* Add a fair amount of top margin to visually separate each row when stacked */
    .ui-table-reflow tbody th {
        margin-top: 3em;
    }

    /* Make the label elements a percentage width */
    .ui-table-reflow td .ui-table-cell-label,
    .ui-table-reflow th .ui-table-cell-label {
        padding: .4em;
        min-width: 30%;
        display: inline-block;
        margin: -.4em 1em -.4em -.4em;
    }

    /* For grouped headers, have a different style to visually separate the levels by classing the first label in each col group */
    .ui-table-reflow th .ui-table-cell-label-top,
    .ui-table-reflow td .ui-table-cell-label-top {
        display: block;
        padding: .4em 0;
        margin: .4em 0;
        text-transform: uppercase;
        font-size: .9em;
        font-weight: normal;
    }
}

/* Breakpoint to show as a standard table at 560px (35em x 16px) or wider */
@media ( min-width: 35em ) {
    /* Fixes table rendering when switching between breakpoints in Safari <= 5. See https://github.com/jquery/jquery-mobile/issues/5380 */
    .ui-table-reflow.ui-responsive {
        display: table-row-group;
    }

    /* Show the table header rows */
    .ui-table-reflow.ui-responsive td,
    .ui-table-reflow.ui-responsive th,
    .ui-table-reflow.ui-responsive tbody th,
    .ui-table-reflow.ui-responsive tbody td,
    .ui-table-reflow.ui-responsive thead td,
    .ui-table-reflow.ui-responsive thead th {
        display: table-cell;
        margin: 0;
    }

    /* Hide the labels in each cell */
    .ui-table-reflow.ui-responsive td .ui-table-cell-label,
    .ui-table-reflow.ui-responsive th .ui-table-cell-label {
        display: none;
    }
}

/* Hack to make IE9 and WP7.5 treat cells like block level elements, scoped to ui-responsive class */
/* Applied in a max-width media query up to the table layout breakpoint so we don't need to negate this*/
@media ( max-width: 35em ) {
    .ui-table-reflow.ui-responsive td,
    .ui-table-reflow.ui-responsive th {
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        float: left;
        clear: left;
    }
}

/* Panel */
.ui-panel {
    width: 17em;
    min-height: 100%;
    max-height: none;
    border-width: 0;
    position: absolute;
    top: 0;
    display: block;
}

.ui-panel-closed {
    width: 0;
    max-height: 100%;
    overflow: hidden;
    visibility: hidden;
}

.ui-panel-fixed {
    position: fixed;
    bottom: -1px; /* Fixes gap on Chrome for Android */
    padding-bottom: 1px;
}

.ui-panel-display-reveal {
    z-index: 1;
}

.ui-panel-display-push {
    z-index: 999;
}

.ui-panel-display-overlay {
    z-index: 1001; /* Fixed toolbars have z-index 1000 */
}

/* Container, page and wrapper */
.ui-panel-page-container {
    overflow-x: visible;
}

.ui-panel-page-container-themed .ui-page-active {
    background: none;
}

.ui-panel-wrapper {
    position: relative;
    min-height: inherit;
    border: 0;
    overflow-x: hidden;
    z-index: 999;
}

/* Fixed toolbars */
.ui-panel-fixed-toolbar {
    overflow-x: hidden;
}

/* Dismiss */
.ui-panel-dismiss {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    z-index: 1002;
    display: none;
}

.ui-panel-dismiss-open {
    display: block;
}

/* Animate class is added to panel, wrapper and fixed toolbars */
.ui-panel-animate {
    -webkit-transition: -webkit-transform 300ms ease;
    -moz-transition: -moz-transform 300ms ease;
    transition: transform 300ms ease;
}

/* Fix for Windows Phone issue #6349: unset the transition for transforms in case of fixed toolbars. */
@media screen and ( max-device-width: 768px ) {
    .ui-page-header-fixed .ui-panel-animate.ui-panel-wrapper,
    .ui-page-footer-fixed .ui-panel-animate.ui-panel-wrapper,
    .ui-panel-animate.ui-panel-fixed-toolbar {
        -ms-transition: none;
    }

    /* We need a transitionend event ... */
    .ui-panel-animate.ui-panel-fixed-toolbar {
        -ms-transition: -ms-transform 1ms;
        -ms-transform: rotate(0deg);
    }
}

/* Hardware acceleration for smoother transitions on WebKit browsers */
.ui-panel-animate.ui-panel:not(.ui-panel-display-reveal) {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
}

/* Panel positioning (for overlay and push) */
/* Panel left closed */
.ui-panel-position-left {
    left: -17em;
}

/* Panel left closed animated */
.ui-panel-animate.ui-panel-position-left.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-left.ui-panel-display-push {
    left: 0;
    -webkit-transform: translate3d(-17em, 0, 0);
    -moz-transform: translate3d(-17em, 0, 0);
    transform: translate3d(-17em, 0, 0);
}

/* Panel left open */
.ui-panel-position-left.ui-panel-display-reveal, /* Unset "panel left closed" for reveal */
.ui-panel-open.ui-panel-position-left {
    left: 0;
}

/* Panel left open animated */
.ui-panel-animate.ui-panel-open.ui-panel-position-left.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-open.ui-panel-position-left.ui-panel-display-push {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -moz-transform: none;
}

/* Panel right closed */
.ui-panel-position-right {
    right: -17em;
}

/* Panel right closed animated */
.ui-panel-animate.ui-panel-position-right.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-position-right.ui-panel-display-push {
    right: 0;
    -webkit-transform: translate3d(17em, 0, 0);
    -moz-transform: translate3d(17em, 0, 0);
    transform: translate3d(17em, 0, 0);
}

/* Panel right open */
.ui-panel-position-right.ui-panel-display-reveal, /* Unset "panel right closed" for reveal */
.ui-panel-position-right.ui-panel-open {
    right: 0;
}

/* Panel right open animated */
.ui-panel-animate.ui-panel-open.ui-panel-position-right.ui-panel-display-overlay,
.ui-panel-animate.ui-panel-open.ui-panel-position-right.ui-panel-display-push {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -moz-transform: none;
}

/* Wrapper and fixed toolbars positioning (for reveal and push) */
/* Panel left open */
.ui-panel-page-content-position-left {
    left: 17em;
    right: -17em;
}

/* Panel left open animated */
.ui-panel-animate.ui-panel-page-content-position-left {
    left: 0;
    right: 0;
    -webkit-transform: translate3d(17em, 0, 0);
    -moz-transform: translate3d(17em, 0, 0);
    transform: translate3d(17em, 0, 0);
}

/* Panel right open */
.ui-panel-page-content-position-right {
    left: -17em;
    right: 17em;
}

/* Panel right open animated */
.ui-panel-animate.ui-panel-page-content-position-right {
    left: 0;
    right: 0;
    -webkit-transform: translate3d(-17em, 0, 0);
    -moz-transform: translate3d(-17em, 0, 0);
    transform: translate3d(-17em, 0, 0);
}

/* Dismiss model open */
.ui-panel-dismiss-open.ui-panel-dismiss-position-left {
    left: 17em;
}

.ui-panel-dismiss-open.ui-panel-dismiss-position-right {
    right: 17em;
}

/* Shadows and borders */
.ui-panel-display-reveal {
    -webkit-box-shadow: inset -5px 0 5px rgba(0, 0, 0, .15);
    -moz-box-shadow: inset -5px 0 5px rgba(0, 0, 0, .15);
    box-shadow: inset -5px 0 5px rgba(0, 0, 0, .15);
}

.ui-panel-position-right.ui-panel-display-reveal {
    -webkit-box-shadow: inset 5px 0 5px rgba(0, 0, 0, .15);
    -moz-box-shadow: inset 5px 0 5px rgba(0, 0, 0, .15);
    box-shadow: inset 5px 0 5px rgba(0, 0, 0, .15);
}

.ui-panel-display-overlay {
    -webkit-box-shadow: 5px 0 5px rgba(0, 0, 0, .15);
    -moz-box-shadow: 5px 0 5px rgba(0, 0, 0, .15);
    box-shadow: 5px 0 5px rgba(0, 0, 0, .15);
}

.ui-panel-position-right.ui-panel-display-overlay {
    -webkit-box-shadow: -5px 0 5px rgba(0, 0, 0, .15);
    -moz-box-shadow: -5px 0 5px rgba(0, 0, 0, .15);
    box-shadow: -5px 0 5px rgba(0, 0, 0, .15);
}

.ui-panel-open.ui-panel-position-left.ui-panel-display-push {
    border-right-width: 1px;
    margin-right: -1px;
}

.ui-panel-page-content-position-left.ui-panel-page-content-display-push {
    margin-left: 1px;
    width: auto;
}

.ui-panel-open.ui-panel-position-right.ui-panel-display-push {
    border-left-width: 1px;
    margin-left: -1px;
}

.ui-panel-page-content-position-right.ui-panel-page-content-display-push {
    margin-right: 1px;
    width: auto;
}

@media (min-width: 55em) {
    .ui-responsive-panel .ui-panel-page-content-open.ui-panel-page-content-position-left {
        margin-right: 17em;
    }

    .ui-responsive-panel .ui-panel-page-content-open.ui-panel-page-content-position-right {
        margin-left: 17em;
    }

    .ui-responsive-panel .ui-panel-page-content-open {
        width: auto;
    }

    .ui-responsive-panel .ui-panel-dismiss-display-push,
    .ui-responsive-panel.ui-page-active ~ .ui-panel-dismiss-display-push {
        display: none;
    }
}

.ui-icon-loading {
    background: url(../images/ajax-loader.gif);
    background-size: 2.875em 2.875em;
}